let test = 'test'
let luke = {
  id: 2,
  say: function () {
    setTimeout(function () {
      console.log('id:', this.id)
    }, 50);
  },
  sayWithThis: function () {
    let that = this
    setTimeout(function () {
      console.log('id:', that.id)
    }, 500);
  },
  sayWithArrow: function () {
    setTimeout(() => {
      console.log('arrow id:', this.id)
    }, 1500);
  },
  sayWithGlobalArrow:() => {
    setTimeout(() => {
      console.log(this.id)
    }, 2000);
  }
}
luke.say()
luke.sayWithThis()
luke.sayWithArrow()
luke.sayWithGlobalArrow()
